package org.jeecgframework.web.material.entity;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.OneToOne;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;

/**   
 * @Description: 收入明细
 * @date 2015-08-17 10:01:47
 * @version V1.0   
 *
 */
@Entity
@Table(name = "flow_detail_income", schema = "")
@SuppressWarnings("serial")
public class FlowDetailIncomeEntity implements java.io.Serializable {
	//主键ID
	private java.lang.String id;
	//资金流ID
	private FlowEntity flowId;
	//金额
	private java.lang.Double money;
	//收款人ID
	private java.lang.String receiverId;
	//收款人姓名
	private java.lang.String receiverName;
	//支付人ID
	private java.lang.String payerId;
	//支付人姓名
	private java.lang.String payerName;
	//交易时间
	private java.util.Date tradeTime;
	//付款进度
	private java.lang.String paidProgress;
	//公司
	private CompanyEntity companyId;
	//备注
	private java.lang.String remark;
	
	/**
	 *get方法: 取得主键ID
	 */
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=32)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *set方法: 设置主键ID
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}

	@OneToOne(fetch=FetchType.EAGER)
	@JoinColumn(name ="FLOW_ID")
	public FlowEntity getFlowId() {
		return flowId;
	}

	public void setFlowId(FlowEntity flowId) {
		this.flowId = flowId;
	}

	@Column(name ="MONEY")
	public java.lang.Double getMoney() {
		return money;
	}

	public void setMoney(java.lang.Double money) {
		this.money = money;
	}

	@Column(name ="RECEIVER_ID")
	public java.lang.String getReceiverId() {
		return receiverId;
	}

	public void setReceiverId(java.lang.String receiverId) {
		this.receiverId = receiverId;
	}

	@Column(name ="RECEIVER_NAME")
	public java.lang.String getReceiverName() {
		return receiverName;
	}

	public void setReceiverName(java.lang.String receiverName) {
		this.receiverName = receiverName;
	}

	@Column(name ="PAYER_ID")
	public java.lang.String getPayerId() {
		return payerId;
	}

	public void setPayerId(java.lang.String payerId) {
		this.payerId = payerId;
	}

	@Column(name ="PAYER_NAME")
	public java.lang.String getPayerName() {
		return payerName;
	}

	public void setPayerName(java.lang.String payerName) {
		this.payerName = payerName;
	}

	@Column(name ="TRADE_TIME")
	public java.util.Date getTradeTime() {
		return tradeTime;
	}

	public void setTradeTime(java.util.Date tradeTime) {
		this.tradeTime = tradeTime;
	}
	
	
	@Column(name ="PAID_PROGRESS")
	public java.lang.String getPaidProgress() {
		return paidProgress;
	}

	public void setPaidProgress(java.lang.String paidProgress) {
		this.paidProgress = paidProgress;
	}

	@OneToOne(fetch=FetchType.LAZY)
	@JoinColumn(name ="COMPANY_ID")
	public CompanyEntity getCompanyId() {
		return companyId;
	}

	public void setCompanyId(CompanyEntity companyId) {
		this.companyId = companyId;
	}

	@Column(name ="REMARK")
	public java.lang.String getRemark() {
		return remark;
	}

	public void setRemark(java.lang.String remark) {
		this.remark = remark;
	}
	
	
}
